<?php

namespace App\Http\Resources;

use Illuminate\Http\Request;

/**
 * Resource 模板
 * 
 * 新开发 Resource 时，可以复制此模板并修改
 * 
 * 使用方法：
 * 1. 复制此文件并重命名为 YourResource.php
 * 2. 修改类名和命名空间
 * 3. 在 toArray() 方法中添加字段
 * 4. 所有日期字段必须使用 formatDateTime() 方法
 */
class ResourceTemplate extends BaseResource
{
    /**
     * Transform the resource into an array.
     *
     * @return array<string, mixed>
     */
    public function toArray(Request $request): array
    {
        return [
            'id' => $this->id,
            // 添加其他字段...
            
            // ✅ 日期字段必须使用 formatDateTime() 方法
            'created_at' => $this->formatDateTime($this->created_at),
            'updated_at' => $this->formatDateTime($this->updated_at),
            'deleted_at' => $this->formatDateTime($this->deleted_at),
            
            // ✅ 其他日期字段也要格式化
            // 'published_at' => $this->formatDateTime($this->published_at),
            
            // ✅ 关联数据也要使用 Resource
            // 'user' => $this->whenLoaded('user', function () {
            //     return new UserResource($this->user);
            // }),
        ];
    }
}

